<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>高度塌陷的问题</title>
		<style>

            .outer {
                border: 10px red solid;

                /*
                    BFC(Block Formatting Context) 块级格式化环境
                        - BFC是一个CSS中的隐含属性,可以为一个元素开启BFC
                            开启BFC该元素会变成一个独立的布局区域
                        - 元素开启BFC后的特点:
                            1.开启BFC的元素不会被浮动元素所覆盖
                            2.开启BFC的元素子元素和父元素的外边距不会重叠
                            3.开启BFC的元素可以包含浮动子元素

                        - 可以通过一些特殊方式来开启元素的BFC:
                            1.可以设置元素的浮动 (不推荐)
                            2.将元素设置为行内块元素 (不推荐)
                            3.将元素的overflow设置为一个非visible的值
                                - 常用的方式 为元素设置 overflow hidden 开启其BFC 以使其可以包含浮动元素

                */
                /*float: left;*/
                /*display: inline-block;*/
	            overflow: hidden;
            }

            /*
                不指定父元素高度,让子元素浮动,会导致父元素高度塌陷
            */
            .inner {
                width: 100px;
                height: 100px;
                background-color: #bfa;

                /*
					高度塌陷的问题:
						在浮动的布局中,父元素的高度默认是被子元素撑开的
							当子元素浮动后,其会完全脱离文档流,子元素从文档流中脱离,
							将会无法撑起父元素的高度,导致父元素的高度丢失。

						父元素高度丢失以后,其下的元素会自动上移,导致页面的布局混乱

						所以高度塌陷浮动布局中比较常见的一个问题,这个问题我们必须处理!
				*/
                float: left;
            }
		</style>
	</head>
	<body>
		<div class="outer">

			<div class="inner">

			</div>

		</div>

		<div style="width: 100px;height: 100px; background-color: yellow;"></div>
	</body>
</html>
